op_concat_VS_VS Function

private elemental function op_concat_VS_VS(string_a, string_b) result(concat_string)

Concatenate two varying strings

Arguments

Type IntentOptional Attributes Name
type(varying_string), intent(in) :: string_a
type(varying_string), intent(in) :: string_b

Return Value type(varying_string)


Variables

Type Visibility Attributes Name Initial
integer, private :: len_string_a

Source Code

  elemental function op_concat_VS_VS (string_a, string_b) result (concat_string)

    type(varying_string), intent(in) :: string_a
    type(varying_string), intent(in) :: string_b
    type(varying_string)             :: concat_string

    integer                          :: len_string_a

    len_string_a = len(string_a)

    ALLOCATE(concat_string%chars(len_string_a+len(string_b)))

    concat_string%chars(:len_string_a) = string_a%chars
    concat_string%chars(len_string_a+1:) = string_b%chars

! Finish

    return

  end function op_concat_VS_VS